package cn.iocoder.yudao.module.wine.controller.app.supplyinfo.vo;

import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * @author zyc
 * @createDate 2024/4/25 14:39
 */
@Schema(description = "App - 供求信息 Response VO")
@Data
@ExcelIgnoreUnannotated
public class AppSupplyInfoListRespVO {
    @Schema(description = "主键ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "569")
    @ExcelProperty("主键ID")
    private Integer id;

    @Schema(description = "用户id", example = "9953")
    @ExcelProperty("用户id")
    private Long userId;

    @Schema(description = "发布类型：1--出售，2--求购", example = "1")
    @ExcelProperty("发布类型：1--出售，2--求购")
    private Integer infoType;

    @Schema(description = "信息类型: Info_Type表主键ID", example = "31177")
    @ExcelProperty("信息类型: Info_Type表主键ID")
    private Integer supplyTypeId;

    @Schema(description = "信息名称", example = "李四")
    @ExcelProperty("信息名称")
    private String infoName;

    @Schema(description = "条款", example = "条款")
    @ExcelProperty("条款")
    private String clause;

    @Schema(description = "简短标题")
    @ExcelProperty("简短标题")
    private String infoTitle;

    @Schema(description = "年份")
    @ExcelProperty("年份")
    private Integer showYear;

    @Schema(description = "香型", example = "1")
    @ExcelProperty("香型")
    private Integer fragranceType;

    @Schema(description = "度数")
    @ExcelProperty("度数")
    private Integer degree;

    @Schema(description = "容量")
    @ExcelProperty("容量")
    private Integer capacity;

    @Schema(description = "包装")
    @ExcelProperty("包装")
    private Integer packing;

    @Schema(description = "产地")
    @ExcelProperty("产地")
    private Integer productArea;

    @Schema(description = "语言", example = "语言")
    @ExcelProperty("语言")
    private Integer language;

    @Schema(description = "区域id")
    @ExcelProperty("区域id")
    private Integer areaId;

    @Schema(description = "多少瓶")
    @ExcelProperty("多少瓶")
    private Integer quantity;

    @Schema(description = "多少件")
    @ExcelProperty("多少件")
    private Integer packages;

    @Schema(description = "标签:多个“，”隔开:包损、到付等")
    @ExcelProperty("标签:多个“，”隔开:包损、到付等")
    private String labels;

    @Schema(description = "特殊标签")
    @ExcelProperty("特殊标签")
    private String tags;

    @Schema(description = "单图")
    @ExcelProperty("单图")
    private String image;

    @Schema(description = "多图")
    @ExcelProperty("多图")
    private String images;

    @Schema(description = "单位：件/箱")
    @ExcelProperty("单位：件/箱")
    private Integer unit;

    @Schema(description = "市场价格", example = "7309")
    @ExcelProperty("市场价格")
    private BigDecimal marketPrice;

    @Schema(description = "销售价格", example = "12883")
    @ExcelProperty("销售价格")
    private BigDecimal salePrice;

    @Schema(description = "描述", example = "你猜")
    @ExcelProperty("描述")
    private String description;

    @Schema(description = "状态枚举：1--添加，2--已审核，3--未审核，4--下架", example = "2")
    @ExcelProperty("状态枚举：1--添加，2--已审核，3--未审核，4--下架")
    private Integer status;

    @Schema(description = "交易状态：1--正常交易，2--担保交易中", example = "1")
    @ExcelProperty("交易状态：1--正常交易，2--担保交易中")
    private Integer tradeStatus;

    @Schema(description = "是否担责")
    @ExcelProperty("是否担责")
    private Integer isDuty;

    @Schema(description = "真实浏览数量", example = "20118")
    @ExcelProperty("真实浏览数量")
    private Integer viewCount;

    @Schema(description = "显示浏览数量", example = "26691")
    @ExcelProperty("显示浏览数量")
    private Integer showCount;

    @Schema(description = "排序")
    @ExcelProperty("排序")
    private Integer sort;

    @Schema(description = "是否置顶")
    @ExcelProperty("是否置顶")
    private Integer isTop;

    @Schema(description = "是否热门")
    @ExcelProperty("是否热门")
    private Integer isHot;

    @Schema(description = "是否推荐")
    @ExcelProperty("是否推荐")
    private Integer isRecommend;

    @Schema(description = "创建时间")
    @ExcelProperty("创建时间")
    private LocalDateTime createTime;

    @Schema(description = "统计标题名称", example = "统计标题名称")
    @ExcelProperty("统计标题名称")
    private String countName;

    /**
     * 是否参与统计：0--不参与，1--参与
     */
    @Schema(description = "是否参与统计", example = "是否参与统计")
    @ExcelProperty("是否参与统计")
    private Integer isCount;
    /**
     * 是否有配置：0--没有，1--有
     */
    @Schema(description = "是否有配置", example = "是否有配置")
    @ExcelProperty("是否有配置")
    private Integer isConfig;
}
